There are conventional information processing systems in which a user holds a controller device and inputs are made by using the controller device. For example, there is a technique which assumes a case where a user makes inputs on the touch panel of the controller device with the right hand and another case where a user makes inputs with the left hand, wherein the technique determines which is the case by prompting the user himself/herself to input whether the user is left-handed or right-handed.
Where the mode of holding is determined based only on an input made by the user himself/herself, the mode of holding may be erroneously determined due to an erroneous input.
Therefore, the present specification discloses an information processing system, an information processing apparatus, a storage medium having an information processing program stored thereon, and a determination method, with which it is possible to more precisely determine the mode in which the user is holding the controller device.
(1)
An example information processing system described in the present specification includes a controller device. The controller device includes: a housing; and a grip portion formed lopsided with respect to a center of a predetermined surface of the housing. The information processing system includes an attitude calculation unit and a determination unit. The attitude calculation unit calculates an attitude of the controller device. The determination unit determines an orientation of the grip portion with respect to the center based on the attitude of the controller device.
Where the grip portion is formed lopsided as in configuration (1) above, the orientation of the grip portion may differ depending on the user's preference in terms of the hand the user wishes to use or how the user wishes to hold the grip portion. With configuration (1) above, it is possible to determine the orientation of the grip portion of the controller device by calculating the attitude of the controller device. Therefore, the information processing system can precisely determine the mode of use in which the controller device is used.
(2)
The information processing system may further include a process executing unit for executing an information process after the determination by the determination unit, wherein the information process is an information process based on an input made on the controller device, and the content of the information process varies depending on a determination result of the determination unit.
With configuration (2) above, an information process is executed the content of which varies depending on the determination result of the determination unit. Therefore, the information processing system is capable of executing the information process of suitable content depending on the mode of use of the controller device. Thus, the user can freely select one way of holding the grip portion from among a plurality of ways with different orientations, and it is therefore possible to improve the controllability of a controller device 2.
(3)
The information processing system may further include an output unit for outputting, before the execution of the information process, an image and/or sound representing a mode of holding the controller device when the information process is executed.
With configuration (3) above, modes of holding (ways of holding) the controller device are presented to the user by an image and/or sound. Thus, it is possible to teach the user ways of holding the controller device in an easy-to-understand manner.
(4)
The information processing system may further include an output unit for outputting an image and/or sound representing a plurality of states with different orientations of the grip portion. Then, the determination unit selects an orientation of the grip portion from among the plurality of states (of the controller device).
With configuration (4) above, by presenting the image and/or sound to the user, the information processing system can show the user that there are a plurality of ways of holding the controller device to choose from, and specifically show the ways of holding. Therefore, the user can easily choose one of a plurality of possible ways of holding that the user prefers.
(5)
The output unit may output an image and/or sound representing the controller device as seen from a direction generally perpendicular to the predetermined plane.
With configuration (5) above, since an image and/or sound of the controller device as seen from a direction generally perpendicular to the predetermined plane on which the grip portion is provided is presented to the user, it is possible to present to the user ways of holding the controller device in an easy-to-understand manner.
Where configuration (5) above and configuration (10) below are combined together, by presenting the image and/or sound to the user, it is possible to guide the user to changing the attitude of the controller device to a state such that the attitude can be calculated based on the detection result of the acceleration sensor. That is, even when the attitude of the controller device is calculated by using the acceleration sensor, it is possible to easily make the determination.
(6)
The information processing system may further include a judgment unit for judging, where the image and/or sound is output, whether the controller device has assumed a predetermined attitude represented by the image and/or sound. Then, the determination unit determines the orientation of the grip portion when the controller device has assumed the predetermined attitude.
With configuration (6) above, the information processing system determines the orientation of the grip portion when the controller device is actually held in the way of holding which has been presented by the image and/or sound. Thus, by making the determination at an appropriate time, it is possible to more accurately determine the orientation of the grip portion.
(7)
The controller device may further include a position detection unit for detecting a position at which an input has been made on a predetermined input surface provided on the housing. Then, the process executing unit executes the information process using at least the position detected by the position detection unit as an input.
With configuration (7) above, the user can operate the controller device using a touch input on the touch panel, thus enabling an intuitive and easy-to-understand operation. Where an operation is made by a touch input, the user holds the controller device by one hand, and it is therefore advantageous if configuration (2) above makes it easier to hold the controller device.
(8)
The process executing unit may execute the information process using at least the attitude of the controller device as an input.
With configuration (8) above, the user can perform an operation of changing the orientation (attitude) of the controller device, thus enabling an intuitive and easy-to-understand operation.
(9)
The grip portion may be formed lopsided with respect to a left-right direction of the predetermined plane. Then, the determination unit determines whether the grip portion is facing left or facing right with respect to the center. The process executing unit executes, as the information process, a process of changing a direction in a virtual space according to an attitude change of the controller device. The change in the direction in the virtual space is reversed depending on the determination result with respect to an attitude change about an axis extending in the left-right direction and/or an attitude change about an axis extending in an up-down direction parallel to the predetermined plane and perpendicular to the left-right direction.
Where it is determined whether the grip portion is facing left or facing right with respect to the center as in configuration (9) above, i.e., where there are two possible ways of holding that are opposite in terms of the up-down direction of the controller device, the orientation in which a direction in the virtual space changes in response to the attitude change of the controller device may vary depending on the way of holding. With configuration (9) above, since the orientation can be appropriately determined depending on the way of holding, the information processing system can properly execute a process in response to the operation of changing the attitude of the controller device.
(10)
The controller device may further include an acceleration sensor. Then, the attitude calculation unit calculates an attitude of the controller device with respect to a direction of gravity based on a detection result of the acceleration sensor.
With configuration (10) above, it is possible to easily calculate the attitude of the controller device by using the detection result of the acceleration sensor.
Note that the present specification discloses an example information processing apparatus including various units that are equivalent to the various units (excluding the grip portion) recited in configurations (1) to (10) above, and discloses an example non-transitory computer-readable storage medium storing an information processing program capable of causing a computer of an information processing apparatus to execute operations of the various units. The present specification also discloses an example orientation determination method (a method for determining the orientation of the grip portion) to be carried out in configurations (1) to (10) above.
With the information processing system, the information processing apparatus, the storage medium having an information processing program stored thereon and the determination method described above, the orientation of the grip portion formed lopsided with respect to the center of a predetermined surface of the housing of the controller device is determined based on the attitude of the controller device, whereby it is possible to precisely determine the mode of use in which the controller device is used.
These and other objects, features, aspects and advantages will become more apparent from the following detailed description when taken in conjunction with the accompanying drawings.